package com.webtest.demo;

import static org.testng.Assert.assertEquals;

import org.testng.annotations.Test;

import com.webtest.core.BaseTest;
import com.webtest.dataprovider.NSDataProvider;

public class OurHouseAutomaticTest extends BaseTest{

	@Test(priority=1)
	public void Test1() {//登录前端首页。结果与预期一致
		webtest.open("http://ourhouse/home.php");
		webtest.open("http://ourhouse/root/run/umc.php?user");
		webtest.click("xpath=//a[contains(text(),'点击我登录')]");
		webtest.type("id=fm[uname]", "admin_wjw");
		webtest.type("id=fm[upass]", "admin_wjw");
		webtest.click("xpath=//*[@id=\"fmlogin\"]/p[3]/i[2]/input[4]");
		webtest.type("xpath=//*[@id=\"fmlogin\"]/p[3]/i[2]/input[4]","11111");
		webtest.click("xpath=//input[@value='提交']");
	}

	@Test(priority=2)
	public void Test2() {//点击广告跳转到其他界面。结果与预期一致
		webtest.click("link=爱窝房产");
		webtest.click("link=越乐家装 -- 淘宝店");
		boolean flag=webtest.isTextPresent("淘宝网");
		assertEquals(flag, true);
	}	

	@Test(priority=3)
    	public void Test3() {//点击二手房。结果与预期一致
		webtest.click("link=爱窝房产");
		webtest.click("link=二手房");
		boolean flag=webtest.isTextPresent("找到 98 条纪录");
		assertEquals(flag, true);
    }

	@Test(priority=4)
	public void Test4() {//点击楼盘-筛选。结果与预期一致
		webtest.open("http://ourhouse/home.php");
		webtest.click("xpath=//*[@id=\"idf_house\"]/a[1]");
		webtest.selectByIndex("name=stype", 1);
		webtest.click("id=sobtn");
		boolean string = webtest.isTextPresent("吴佳伟");
		assertEquals(string, true);
	}

	@Test(priority=5)
	public void Test5() {//楼盘-检察院生活小区验证码输入错误外其余正确，预期报错，结果与预期相符
		webtest.open("http://ourhouse/home.php");
		webtest.click("xpath=//*[@id=\"idf_house\"]/a[1]");
		webtest.click("xpath=//a[contains(text(),'检察院生活小区')]");
		webtest.click("xpath=//button[contains(text(),'我要')]");
		webtest.click("id=fm_ntype_1");
		webtest.type("name=fm[mtel]", "110110110");
		webtest.type("name=fm[mname]", "吴佳伟");
		webtest.click("xpath=//*[@id=\\\"nform\\\"]/table[1]/tbody[1]/tr[4]/td[2]/input[4]");
		webtest.type("xpath=//*[@id=\"nform\"]/table[1]/tbody[1]/tr[4]/td[2]/input[4]", "99999999");
		webtest.click("xpath=//*[@id=\"myModal\"]/div[1]/div[1]/div[3]/button[2]");
	}

	@Test(priority=6)
	public void Test6() {//下拉框选楼盘，输入东城云顶预计显示东城云顶相关信息。结果与预期相符
		webtest.open("http://ourhouse/home.php");
		webtest.click("xpath=//*[@id=\"idf_house\"]/a[1]");
		webtest.selectByIndex("name=stype", 0);
		webtest.type("id=keywd", "东城云顶");
		webtest.click("id=sobtn");
		boolean string = webtest.isTextPresent("云顶东城");
		assertEquals(string, true);
	}

	@Test(priority=7)
	public void Test7() {//点击广告-返回首页，与预期结果不一致。
		webtest.click("link=爱窝房产");
		webtest.click("link=邮箱安全升级设置");
		boolean flag=webtest.isTextPresent("邮箱安全升级设置");
		assertEquals(flag, false);
	}	
	
	@Test(priority=8)
	public void Test8(){//楼盘-公交，终点输入并得到路线。结果与预期相符
		webtest.open("http://ourhouse/home.php");
		webtest.click("xpath=//*[@id=\"idf_house\"]/a[1]");
		webtest.click("xpath=//a[contains(text(),'东城云顶')]");
		webtest.click("xpath=//*[@id=\"icon_menu\"]/a[2]");
		webtest.type("xpath=//*[@id=\"bus_ipt\"]/li[2]/input", "河北师范大学");
		webtest.click("id=btn_Router");
	}
		
	@Test(priority=9)
	public void Test9() {//检察院生活小区-返回娱乐，预期出现娱乐场所等界面，
		webtest.open("http://ourhouse/home.php");
		webtest.click("xpath=//*[@id=\"idf_house\"]/a[1]");
		webtest.selectByIndex("name=stype", 1);
		webtest.click("id=sobtn");
		webtest.click("xpath=//a[contains(text(),'检察院生活小区')]");
		webtest.click("xpath=//a[contains(text(),'返回')]");
		webtest.click("xpath=//*[@id=\"fun\"]/span");
	}

	@Test(priority=10)
	public void Test10() {//点击广告-百款网游点卡大优惠-返回首页。与预期结果不符合。
		webtest.open("http://ourhouse/home.php");
		webtest.click("link=百款网游点卡大优惠");
		boolean flag=webtest.isTextPresent("百款网游点卡大优惠");
		assertEquals(flag, false);
	}
	
	@Test(priority=11)
	public void Test11() {//首页-资讯。与预期相符。
		webtest.click("link=爱窝房产");
		webtest.click("link=资讯");
		boolean flag=webtest.isTextPresent("n1012:python/nodejs");
		assertEquals(flag, true);
    }
	
	@Test(priority=12)
    	public void Test12() {//首页-部门，与预期相符合。
		webtest.click("link=爱窝房产");
		webtest.click("link=部门");
		boolean flag=webtest.isTextPresent("inadm:管理部");
	    assertEquals(flag, true);
   	}		

	@Test(priority=12)
	public void Test12() {//广告链接。与预期相符合。
		webtest.open("http://ourhouse/home.php");
		webtest.click("xpath=//*[@id=\"idf_house\"]/a[1]");
		webtest.click("xpath=//*[@id=\"jsid_advs_adpic_250x60a\"]/a[1]/img");
	}
	@Test(priority=13)
	public void Test13() {//点击二手房-筛选-个人房源
		webtest.open("http://ourhouse/home.php");
		webtest.click("xpath=//*[@id=\"idf_sale\"]/a[1]");
		webtest.click("xpath=//*[@id=\"socatid\"]/a[2]");
	}

	@Test(priority=14)
	public void Test14() {//首页-关于。与预期相符合。
		webtest.open("http://ourhouse/home.php");
    	webtest.click("link=关于");		
		boolean flag=webtest.isTextPresent("公司简介范文");
	    assertEquals(flag, true);
    }	

	@Test(priority=15)
	public void Test15() {//后台登录
		webtest.open("/adm.php?login");
		webtest.type("id=fm[uname]", "admin123");
		webtest.type("id=fm[upass]", "admin123");
		webtest.click("xpath=//*[@id=\"fmadm\"]/p[3]/i[2]/input[4]");
		webtest.type("xpath=//*[@id=\"fmadm\"]/p[3]/i[2]/input[4]", "11111");
		webtest.click("name=submit");
	}

	@Test(priority=16,dataProvider="excel",dataProviderClass=NSDataProvider.class)
	public void Test16(String fmcatid,String fmshow,String fmtitle) {//点击出售管理-修改-产品信息（正常）
		webtest.click("link=出售管理");
		webtest.enterFrameLocator("id=adf_main");
		webtest.click("link=修改");
		webtest.selectByVisibleText("xpath=//*[@id=\"fm[catid]\"]", fmcatid);
		webtest.selectByVisibleText("name=fm[show]", fmshow);
		webtest.clear("id=fm[title]");
		webtest.type("id=fm[title]",fmtitle);
		webtest.click("name=bsend");
		String alertText=webtest.getAlertTest();
		boolean flag=alertText.equals("修改成功！");
		webtest.alertAccept();
		webtest.leaveFrame();
		assertEquals(flag, true);
	}

	@Test(priority=17)
	public void Test17() {//点击广告-回收站-搜索。与预期相符。
		webtest.click("xpath=//*[@id=\"adf_nav1\"]/a[4]");
		webtest.click("link=回收站");
		webtest.enterFrameLocator("id=adf_main");
		webtest.selectByIndex("name=stype", 1);
		webtest.selectByIndex("name=sfid", 2);
		webtest.selectByIndex("name=sfop", 2);
		webtest.type("name=sfkw","123");
		webtest.selectByIndex("name=show", 1);
		webtest.selectByIndex("name=order", 3);
		webtest.click("name=sch_notea");
		webtest.leaveFrame();
	}

	@Test(priority=18,dataProvider="excel",dataProviderClass=NSDataProvider.class)
	public void Test18(String fmcatid,String fmshow,String fmtitle) {//点击户型管理-修改-产品信息（正常）
		webtest.click("link=户型管理");
		webtest.enterFrameLocator("id=adf_main");
		webtest.click("link=修改");
		webtest.clear("name=fm[lpid_refname]");
		webtest.type("name=fm[lpid_refname]", "wjw001");
		webtest.clear("id=fm[title]");
		webtest.type("id=fm[title]",fmtitle);
		webtest.click("name=bsend");
		String alertText=webtest.getAlertTest();
		boolean flag=alertText.equals("修改成功！");
		webtest.alertAccept();
		webtest.leaveFrame();
		assertEquals(flag, true);
	}	

	@Test(priority=19)
	public void Test19() {//点击楼盘意向-选择产品修改（正常）
		webtest.click("link=楼盘意向");
		webtest.enterFrameLocator("id=adf_main");
		webtest.click("link=修改");
		webtest.clear("id=fm[mname]");
		webtest.type("id=fm[mname]", "新名字");
		webtest.click("name=bsend");
		String alertText=webtest.getAlertTest();
		boolean flag=alertText.equals("增加成功！");
		webtest.alertAccept();
		webtest.leaveFrame();
		assertEquals(flag, false);
		
	}

	@Test(priority=20)
	public void Test20() {//互动问答管理-笔记管理-选中笔记-选择显示。与预期相符合。
		webtest.click("xpath=//*[@id=\"adf_nav1\"]/a[3]");
		webtest.click("link=问答管理");
		webtest.enterFrameLocator("id=adf_main");
		webtest.click("xpath=//*[@id=\"fmlist\"]/div/table/tbody/tr[2]/td[1]/input");
		webtest.click("xpath=//*[@id=\"fmlist\"]/div/table/tbody/tr[3]/td[1]/input");
		webtest.click("xpath=//*[@id=\"fmlist\"]/div/table/tbody/tr[4]/td[1]/input");
		webtest.selectByIndex("name=fs_do", 2);
		webtest.click("name=bsend");
		webtest.leaveFrame();
	}
	
	@Test(priority = 21)
	public void Test21() {// 点击刷新。与预期相符合。
		webtest.enterFrame("adf_main");
		webtest.click("xpath=//a[@class='fa fa-refresh']");
		webtest.leaveFrame();
	}
	
	@Test(priority=22)
	public void Test22() {//点击楼盘意向-选择产品修改（存在bug）
		webtest.click("link=楼盘意向");
		webtest.enterFrameLocator("id=adf_main");
		webtest.click("link=修改");
		webtest.clear("id=fm[mname]");
		webtest.type("id=fm[mname]", "很到位ID该2灰度2单892393819839）*（）&（）&GKB");
		webtest.click("name=bsend");
		String alertText=webtest.getAlertTest();
		boolean flag=alertText.equals("增加成功！");
		webtest.alertAccept();
		webtest.leaveFrame();
		assertEquals(flag, false);
	}

	@Test(priority=23)
	public void Test23() {//点击互动问答的笔记管理，点击增加资料，输入标题、内容、附加、昵称点击提交
		webtest.click("xpath=//*[@id=\"adf_nav1\"]/a[3]");
		webtest.click("link=笔记管理");
		webtest.enterFrameLocator("id=adf_main");
		webtest.click("id=notea_add");
		webtest.type("id=fm[title]", "吴佳伟2020012244");
		webtest.type("id=fm[detail]","123456");
		webtest.type("id=fm[reply]","123456");
		webtest.type("id=fm[mname]","123456");
		webtest.click("name=bsend");
		webtest.leaveFrame();
	
	}

	@Test(priority=24)
	public void Test24() {//点击修改-项目清空（正常）
		webtest.click("link=动态");
		webtest.enterFrameLocator("id=adf_main");
		webtest.click("link=修改");
		webtest.click("xpath=//*[@id=\"fmlist\"]/div/table/tbody/tr[2]/td[2]/input[5]");
		String inputText=webtest.getValue("id=fm_lpid_refname");
		boolean flag=inputText.equals("");
		webtest.leaveFrame();
		assertEquals(flag, true);
	}
	
	@Test(priority = 25)
	public void Test25() {// 广告—子项目链接跳转测试
		webtest.click("xpath=//a[text()='2']");
		webtest.leaveFrame();
	}

	@Test(priority=26)
	public void Test26() {//广告-搜索-选择。与预期相符合。
		webtest.click("xpath=//*[@id=\"adf_nav1\"]/a[4]");
		webtest.click("link=图片链接");
		webtest.enterFrameLocator("id=adf_main");
		webtest.selectByIndex("name=stype", 1);
		webtest.selectByIndex("name=sfid", 2);
		webtest.selectByIndex("name=sfop", 2);
		webtest.type("name=sfkw","123");
		webtest.selectByIndex("name=show", 1);
		webtest.selectByIndex("name=order", 3);
		webtest.click("name=sch_notea");
		webtest.leaveFrame();
	}
	
	@Test(priority=27)
	public void Test27() {//点击广告的图片链接，选中两张图片，在批量操作处选择显示，点击执行
		webtest.click("xpath=//*[@id=\"adf_nav1\"]/a[4]");
		webtest.click("link=图片链接");
		webtest.enterFrameLocator("id=adf_main");
		webtest.click("xpath=//*[@id=\"fmlist\"]/div/table/tbody/tr[2]/td[1]/input");
		webtest.click("xpath=//*[@id=\"fmlist\"]/div/table/tbody/tr[3]/td[1]/input");
		webtest.selectByIndex("name=fs_do", 2);
		webtest.click("name=bsend");
		webtest.leaveFrame();
	}

	@Test(priority = 28)
	public void Test28() {// 模块架设-插件/接口添加条目测试。与预期结果相符。
		webtest.click("xpath=//a[text()='插件/接口']");
		webtest.click("xpath=//a[text()='增加条目>>']");
		webtest.enterFrame("xpath=//*[@class='layui-layer-content']/iframe");
		webtest.type("name=fm[title]", "666666");
		webtest.click("xpath=//input[@name='bsend']");
		webtest.leaveFrame();
	}

	@Test(priority=29)
	public void Test29() {//个人会员-搜索（正常）。与预期结果相符。
		webtest.click("link=个人会员");
		webtest.enterFrameLocator("id=adf_main");
		webtest.selectByIndex("name=stype", 2);
		webtest.selectByIndex("name=sfid", 1);
		webtest.selectByIndex("name=sfop", 2);
		webtest.type("name=sfkw", "清竹");
		webtest.selectByIndex("name=show", 1);
		webtest.selectByIndex("name=order", 3);
		webtest.click("name=sch_person");
		boolean flag=webtest.isTextPresent("清竹");		
		webtest.leaveFrame();
		assertEquals(flag, true);
	}
	
	@Test(priority = 30)
	public void Test30() {// 广告—相关链接测试
		webtest.click("xpath=//a[@class='atm_m1adm']");
		webtest.click("xpath=//a[text()='广告']");
	}

	@Test(priority=31)
	public void Test31() {//点击广告-内页推送-增加资料-输入-提交。与预期相符。
		webtest.click("xpath=//*[@id=\"adf_nav1\"]/a[4]");
		webtest.click("link=内页推送");
		webtest.enterFrameLocator("id=adf_main");
		webtest.click("id=adpush_add");
		webtest.type("id=fm[title]","吴佳伟2020012244");
		webtest.type("id=fm[mpic]","123456");
		webtest.type("id=fm[detail]","123456");
		webtest.click("name=bsend");
		webtest.leaveFrame();
	}
}